package models

import (
	"time"

	"gopkg.in/mgo.v2/bson"
)

/*
	------------------------------------------------------
	绑定HTTP请求的MODEL
	------------------------------------------------------
*/

// 采集他人能量的记录
type CollentRecords struct {
	// 能量采集的详细数据
	Energys []Energy `json:"energys" binding:"required"`
}

// 能量采集的详情
type Energy struct {
	// 采集对象的账号
	TargetAntId string `json:"target_ant_id" binding:"required"`
	// 能量的数目
	EnergyNumber int64 `json:"energy_number" binding:"required"`
	// 时间
	CollentTime int64 `json:"collent_time" binding:"required"`
}

/*
	------------------------------------------------------
	MogonDB使用的MODEL
	------------------------------------------------------
*/
const (
	MG_CollectionCollentRecords = "collentRecords"
)

// 采集他人能量的记录
// 每日每账号，新增一条document，该日所有能量采集记录都在其中的object数组中
type MG_CollentRecords struct {
	Id bson.ObjectId `json:"_id,omitempty" bson:"_id,omitempty"`
	// 当前蚂蚁账号
	AntId string `json:"ant_id" bson:"ant_id"`
	// 采集的日期，每日一条document
	CollentDay time.Time `json:"collent_day" bson:"collent_day"`
	// 能量采集的详细数据
	Energys []MG_Energy `json:"energys" bson:"energys"`
}

// 能量采集的详情
type MG_Energy struct {
	// 采集对象的账号
	TargetAntId string `json:"target_ant_id" bson:"target_ant_id"`
	// 能量的数目
	EnergyNumber int64 `json:"energy_number" bson:"energy_number"`
	// 时间
	CollentTime time.Time `json:"collent_time" bson:"collent_time"`
}
